//
// C++ Interface: topwindowscanner
//
// Description:
//
//
// Author: Ernesto Barragan <ernestus *at* gmail.com>, (C) 2008
//
// Copyright: See COPYING file that comes with this distribution
//
//
#ifndef TOPWINDOWSCANNER_H
#define TOPWINDOWSCANNER_H

#include <QObject>
class QWSWindow ;

/**
Just a simple top window scanner

    @author Ernesto Barragan <ernestus *at* gmail.com>
*/
class TopWindowScanner : public virtual QObject
{
        Q_OBJECT
    public:
        TopWindowScanner ( QObject *parent = 0 );

        ~TopWindowScanner();

        //! just starts the scan
        void startScan() const ;
    
    signals:
        void signal_found( QWSWindow& window ) const ;
        
    protected:
        /*
            You can override this method if you don't want to pay
            the cost of emitting a signal
        */
        virtual void found ( QWSWindow& window ) const ; 
};

#endif
